#include <iostream>

struct Student {
    int num;
    char name[20];
    float score;
};

int main() {
    struct Student stu[5] = {
            {101, "Zhang", 90},
            {102, "Liu", 88},
            {103, "Song", 87},
            {104, "Dai", 81},
            {105, "Jack", 99},
    };
    struct Student temp;
    const int n = 5;
    int i, j, k;
    printf("The order is：\n");
    for (i = 0; i < n - 1; i++) {
        k = i;
        for (j = i + 1; j < n; j++) {
            if (stu[j].score > stu[k].score) k = j;
        }
        temp = stu[k];
        stu[k] = stu[i];
        stu[i] = temp;
    }
    for (i = 0; i < n; i++) {
        printf("%6d %8s %6.2f\n", stu[i].num, stu[i].name, stu[i].score);
    }
    printf("\n");
    return 0;
}
